1. Field of the Invention
The present invention relates to computer networks, and more particularly, to accessing resources located in computer networks.
2. Description of the Related Art
The Internet has popularized the concept of linking one page (or document) to another page. Such linking is achieved by placing a link head in one page that points to a link tail where another page is located on the Internet. The link tail consists of a Universal Resource Locator (URL). Linking can also be used to link a computing device or its Internet browser running thereon to a home page. A home page is the initial page that the Internet browser displays to a user. The home page is normally set by the user of the Internet browser based on their preferences or set by a service provider that is facilitating the user""s access to the Internet. Examples of Internet browsers are (i) Navigator by Netscape Corporation and (ii) Internet Explorer by Microsoft Corporation.
Additional details concerning Internet protocols, namely, Hypertext Transfer Protocol (HTTP), can be found in Fielding et al., HTTP 1.1, Aug. 12, 1996, which is hereby incorporated by reference. Also, Internet Standards (i) RFC 1738 (T. Lee et al., Uniform Resource Locators (URLs), Network Working Group, RFC 1738, December 1994) and (ii) RFC 1808 (R. Fielding, Relative Uniform Resource Locators, Network Working Group, RFC 1808, June 1995) are also both hereby incorporated by reference.
FIGS. 1A-1E are screen shots illustrating basic conventional displaying of a home page and linking to resources. These screen shots pertain to screens displayed to a user of Microsoft Internet Explorer, Version 3.0. FIG. 1A illustrates a representative home page having an address (i.e., URL) of xe2x80x9cuplanet.com/xe2x80x9d. FIG. 1B illustrates the representative home page of FIG. 1A where a cursor is placed over a News/Events button on the representative home page. Note that the bottom left-hand portion of the representative home page shows a relative URL (xe2x80x9cindex.htmlxe2x80x9d) for the page containing information on the News/Events. Hence, the home page is linked to the News/Events page by a link associated with the News/Event button. FIG. 1C illustrates the News/Events page that is displayed after the user selects (e.g., xe2x80x9cclicks onxe2x80x9d) the News/Events button. The address or URL for the News/Events page is xe2x80x9cuplanet.com/new/index.htmlxe2x80x9d. The News/Events page also contains several local links, including links to Events, Press Releases, Table of Contents, Contact information, and Trademarks information, any of which link to another page that can be displayed to the user. For example, FIG. 1D illustrates the News/Events page when the user places a cursor over the Press Releases link. Note that in this event the bottom left-hand portion of the News/Events page shows a relative URL (xe2x80x9cpress.htmlxe2x80x9d) for the page containing information on the Press Releases. FIG. 1E illustrates the Press Release page (xe2x80x9cuplanet.com/new/ press.htmlxe2x80x9d) that is displayed after the user selects (e.g., xe2x80x9cclicks onxe2x80x9d) the Press Release link on the News/Events page illustrated in FIG. 1D.
In any case, one disadvantage of conventional linking is that the location of the resource being linked to needs to be known when the links are created. The links cannot be properly established if the location of the resource is not known. In other words, a link (i.e., link head) cannot be properly established until the location of the resource (i.e., link tail) becomes known.
Another disadvantage is that once conventional links are established, if the location of the resource changes, the linking fails. In this case, it is said that the link URL (i.e., link head) to the resource (i.e., link tail) is incorrect, so the link fails. There are a number of reasons why the location of resources would subsequently change, including reorganization of a network server, change in service or network providers, and the like.
Often home pages (which are particular resources) are determined by some sort of linking from a pre-stored URL, although a user can often update the pre-stored URL should the location of the desired page for its home page be moved. In other words, if the location of the desired page for the home page moves, the pre-stored URL is referred to as being stale. Other links besides the pre-stored home page link can also go stale in the same way. FIGS. 1F and 1G illustrate screen shots of dialog boxes used with Microsoft Internet Explorer to change a pre-stored URL for a home page. In FIG. 1F, the screen shot shows that the home page address is xe2x80x9cyahoo.comxe2x80x9d which is a popular search engine for the Internet. In FIG. 1G, the screen shot shows that the home page address has been changed to xe2x80x9cmsn.comxe2x80x9d for the Microsoft Network, which on Internet Explorer is the default home page.
Further, service or network providers often desire to control the home page for the user that is a subscriber to their services. In such cases, the disadvantages noted above severely hamper the ability of the service or network provider to move or change the home pages for users. Still further, if a common Internet browser is used to connect to different service or network providers who each want the user to use a different home page, then the home page displayed to the user will need to be different for the different service or network providers.
Thus, there is a need for techniques that provide improved linking such that the addressing of resources is location-independent.
Broadly speaking, the invention relates to aliasing techniques that permit flexibly linking to remotely located resources. The aliasing techniques are used by a browser application to link to a remote resource located on a network (e.g., the Internet) when the location of the remote resource is initially unknown or likely to be changed based on events external to the browser application. For example, the external events can include: relocation of the remote resource, use of a different device, change of user or carrier service to access the remote resource, or selection of different service levels.
In one embodiment of the invention, a browser application (program) executes on a remote computing device and couples to a network gateway via a carrier network. The aliasing techniques of the invention are provided by sending alias information from the network gateway to the browser application, and then having the browser application form an alias table and store the alias table in the remote computing device. The remote computing device can be any of a wide range of two-way interactive communication devices, including a mobile phone, a desktop telephone, a personal digital assistant, an Internet-capable remote controller and a portable general purpose computer.
The invention can be implemented in numerous ways, including as a method, an apparatus, and a computer system. Several embodiments of the invention are discussed below.
As a method for displaying a home page on a display screen associated with a remote computing device operating a browser program and being coupled to a network server, an embodiment of the invention includes the operations of: identifying an alias URL that corresponds to the home page to be displayed on the display screen; converting, within the remote computing device, the alias URL to a resulting URL; requesting the home page from the network server using the resulting URL; and thereafter displaying the home page received from the network server on the display screen.
As a method for displaying a page on a display screen associated with a remote wireless computing device operating a browser program and being coupled to a network server in a wireless manner, another embodiment of the invention includes the operations of: identifying a link URL that corresponds to a page to be displayed on the display screen by the browser program; determining whether the link URL is an alias URL; converting, within the remote wireless computing device, the link URL to a resulting URL when the determining operation determines that the link URL is an alias URL; requesting the page from the network server using the resulting URL; and thereafter displaying the page received from the network server on the display screen.
As an apparatus for displaying a page on a display screen of a computing device, an embodiment of the invention includes a memory that stores a browser and an alias table; and a device controller operatively coupled to the memory. The device controller operates to execute the browser, operates to evaluate link requests by the browser to determine whether the link requests are aliases, and, for each of the link requests that are determined to be an alias, operates to convert the alias to an actual link in accordance with alias information stored in the alias table. Optionally, the alias table can store at least one of an actual homepage link that corresponds to a homepage alias and an actual bookmark link that corresponds to a bookmark alias.
As a mobile device that couples to a network server, an embodiment of the invention includes a display screen; and a computer readable media storing computer program instructions for operating a browser program and for storing computer program instructions for displaying a page on the display screen. The computer program instructions for displaying the page on the display screen include: program code for identifying a link URL that corresponds to the page to be displayed on the display screen by the browser program; program code for determining whether the link URL is an alias URL; program code for converting the link URL to a resulting URL when the program code for determining determines that the link URL is an alias URL; program code for requesting the page from the network server using the resulting URL; and program code for displaying the page received from the network server on the display screen.
As a computer readable medium containing program code for displaying a page on a display screen associated with a remote computing device coupleable to a network server, an embodiment of the invention includes: first program code for identifying a link URL that corresponds to a page to be displayed on the display screen; second program code for determining whether the link URL is an alias URL; third program code for converting the link URL to a resulting URL when the second program code determines that the link URL is an alias URL; fourth program code for requesting the page from the network server using the resulting URL; and fifth program code for thereafter displaying the page received from the network server on the display screen.
As a method for managing pages displayed on a display screen associated with a computing device operating a browser program, an embodiment of the invention includes the operations of: identifying a link URL that corresponds to a page to be displayed on the display screen by the browser program; determining whether the link URL is an alias URL; converting the link URL to a resulting URL when the determining operation determines that the link URL is an alias URL; requesting the page from a remote network server using the resulting URL; thereafter displaying the page received from the remote network server on the display screen; and caching the page received from the remote network server based on the resulting URL.
The advantages of the invention are numerous. One advantage of the invention is that links can be created without prior knowledge of the location (e.g., URL) of the resource being linked. As a particular example, the aliasing techniques can provide flexible, in-browser linking to an appropriate home page or bookmark. Another advantage of the invention is that it allows network servers to relocate its resources or otherwise reorganize its site. Still another advantage of the invention is that external events can alter the linking to different resources even after the link (i.e., link head) is created.
Other aspects and advantages of the invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the invention.